30 research outputs found
Don't Repeat Yourself: Seamless Execution and Analysis of Extensive Network Experiments
This paper presents MACI, the first bespoke framework for the management, the
scalable execution, and the interactive analysis of a large number of network
experiments. Driven by the desire to avoid repetitive implementation of just a
few scripts for the execution and analysis of experiments, MACI emerged as a
generic framework for network experiments that significantly increases
efficiency and ensures reproducibility. To this end, MACI incorporates and
integrates established simulators and analysis tools to foster rapid but
systematic network experiments.
We found MACI indispensable in all phases of the research and development
process of various communication systems, such as i) an extensive DASH video
streaming study, ii) the systematic development and improvement of Multipath
TCP schedulers, and iii) research on a distributed topology graph pattern
matching algorithm. With this work, we make MACI publicly available to the
research community to advance efficient and reproducible network experiments
Display and Voice-free Gesture-based Sleep Timer Control
Interaction with a computing device often causes the device to emit light, e.g., when the interaction causes a turned-off device screen to turn on, or audio, e.g., when the interaction causes an audible beep or other output from the device. Such light or audio emissions are undesirable in certain situations, e.g., when extending a sleep timer. This disclosure provides a voice-free gesture-based sleep timer control that enables extending a sleep timer without light or sound emissions from a device that is performing audio playback. The described techniques can also be used to detect user gestures that are mapped to specific tasks to be performed by the device
Programming Models and Extensive Evaluation Support for MPTCP Scheduling, Adaptation Decisions, and DASH Video Streaming
In this dissertation, we identify that the analysis, implementation, and evaluation of communication systems is hindered by two obstacles: i) missing abstractions and the resulting implementation complexity and ii) the required extensive evaluations for today's large configuration spaces and heterogeneous network environments. A prominent example is Multipath TCP - today's de facto multipathing transport protocol. Multipath TCP packet scheduler innovations are hindered by the implementation complexity of the Linux kernel network stack and the required analysis for a variety of applications and network conditions.
To tackle the first obstacle, we are the first to propose a programming model as abstraction for the design and development of Multipath TCP schedulers. We introduce the ProgMP programming model, which provides a powerful specification language and a high-level API to specify executable Multipath TCP schedulers. We show the strength of ProgMP by implementing 13 novel general purpose, preference-, and application-aware schedulers tackling diverse objectives. As part of these schedulers, we propose the first redundant Multipath TCP scheduler and show that this scheduler significantly reduces latency for applications with tight latency requirements but only moderate throughput needs. We use ProgMP for a detailed analysis of design decisions for the incorporation of redundancy to balance latency and throughput. We further propose schedulers that retain fine-grained throughput or latency objectives, or improve the interaction with upper layer protocols such as HTTP/2, while preserving path preferences. Our detailed emulation-based and real world measurements show that ProgMP enables timely scheduling decisions and a wide range of executable, novel Multipath TCP schedulers. Besides ProgMP, which is our main contribution to overcome the first obstacle of missing abstractions, we further introduce programming models as abstraction for the adaptation decisions of adaptive communication systems. Here, we propose to specify the adaptation decision with event condition action rules and learn rules for a given utility function with genetic programming in extensive network experiments. Finally, we propose a programming model for the specification of topology adaptations in communication systems based on topology graph patterns.
To overcome the second identified obstacle and foster extensive evaluations, we present the MACI framework for the management, scalable execution, and interactive analysis of extensive network experiments. In essence, MACI is a combination and integration of established tools to foster rigorous, seamless evaluations throughout the research process. We discuss our MACI experiences during i) the development and evaluation of our proposed ProgMP schedulers, ii) the analysis of a distributed topology graph pattern matching protocol, and iii) a systematic comparison of DASH video streaming implementations. Our experiences confirm that MACI provides support for the recurring tasks in the evaluation of diverse communication systems and significantly increases research efficiency. The experiments with MACI, i.e., the ProgMP, the topology graph pattern matching, and the DASH experiments, go beyond an evaluation of MACI and significantly contribute to the understanding of these domains.
Overall, this dissertation contributes i) three programming models for the domains of Multipath TCP, adaptive communication systems, and topology adaptations in communication systems, ii) 13 novel, deployable general purpose, preference-, and application-aware Multipath TCP schedulers, and iii) a reusable framework for the seamless execution and analysis of extensive network experiments
Programming Models and Extensive Evaluation Support for MPTCP Scheduling, Adaptation Decisions, and DASH Video Streaming
In this dissertation, we identify that the analysis, implementation, and evaluation of communication systems is hindered by two obstacles: i) missing abstractions and the resulting implementation complexity and ii) the required extensive evaluations for today's large configuration spaces and heterogeneous network environments. A prominent example is Multipath TCP - today's de facto multipathing transport protocol. Multipath TCP packet scheduler innovations are hindered by the implementation complexity of the Linux kernel network stack and the required analysis for a variety of applications and network conditions.
To tackle the first obstacle, we are the first to propose a programming model as abstraction for the design and development of Multipath TCP schedulers. We introduce the ProgMP programming model, which provides a powerful specification language and a high-level API to specify executable Multipath TCP schedulers. We show the strength of ProgMP by implementing 13 novel general purpose, preference-, and application-aware schedulers tackling diverse objectives. As part of these schedulers, we propose the first redundant Multipath TCP scheduler and show that this scheduler significantly reduces latency for applications with tight latency requirements but only moderate throughput needs. We use ProgMP for a detailed analysis of design decisions for the incorporation of redundancy to balance latency and throughput. We further propose schedulers that retain fine-grained throughput or latency objectives, or improve the interaction with upper layer protocols such as HTTP/2, while preserving path preferences. Our detailed emulation-based and real world measurements show that ProgMP enables timely scheduling decisions and a wide range of executable, novel Multipath TCP schedulers. Besides ProgMP, which is our main contribution to overcome the first obstacle of missing abstractions, we further introduce programming models as abstraction for the adaptation decisions of adaptive communication systems. Here, we propose to specify the adaptation decision with event condition action rules and learn rules for a given utility function with genetic programming in extensive network experiments. Finally, we propose a programming model for the specification of topology adaptations in communication systems based on topology graph patterns.
To overcome the second identified obstacle and foster extensive evaluations, we present the MACI framework for the management, scalable execution, and interactive analysis of extensive network experiments. In essence, MACI is a combination and integration of established tools to foster rigorous, seamless evaluations throughout the research process. We discuss our MACI experiences during i) the development and evaluation of our proposed ProgMP schedulers, ii) the analysis of a distributed topology graph pattern matching protocol, and iii) a systematic comparison of DASH video streaming implementations. Our experiences confirm that MACI provides support for the recurring tasks in the evaluation of diverse communication systems and significantly increases research efficiency. The experiments with MACI, i.e., the ProgMP, the topology graph pattern matching, and the DASH experiments, go beyond an evaluation of MACI and significantly contribute to the understanding of these domains.
Overall, this dissertation contributes i) three programming models for the domains of Multipath TCP, adaptive communication systems, and topology adaptations in communication systems, ii) 13 novel, deployable general purpose, preference-, and application-aware Multipath TCP schedulers, and iii) a reusable framework for the seamless execution and analysis of extensive network experiments
SGF: a crowdsourced large-scale event dataset
This paper presents a crowdsourced dataset of a large-scale event
with more than 1000 measuring participants. The detailed dataset
consists of various location data and network measurements of all
national carrier collected during a four-day event. The concentrated
samples for this short time period enable detailed analysis, e.g., by
correlating movement patterns and experienced network conditions
Smart grid / smart home self-adaptive exemplar
Self-adaptive software (SAS) constitutes a key ingredient in the realization of cyber-physical systems that are inherently distributed. A very prominent example of such systems is found in the area of smart homes coupled with smart energy capabilities. Such a home can for instance offer production via photovoltaic plants or storage reserves in form of an electric vehicle. Designing efficient distributed control strategies is important - yet many approaches start from a very customized and hence incomparable initial setup. We therefore discussed an exemplar case study that could serve as a benchmark for evaluations of self-adaptations mechanisms. To be useful for SAS-developers, we included an initial meta-model and both a set of user stories that target requirements of quantities to be evaluated as well as a set of user stories highlighting possible collaboration scenarios (fully centralized vs. fully decentralized, proactive vs. reactive) inspired by ongoing research in the smart grid community